#ifndef _EVENT_SENDER_H
#define _EVENT_SENDER_H

#include <map>
#include "event.h"

class EventReceiver;

class EventSender
{
public:
	EventSender()
		:mReceivers()
	{
	}
	~EventSender()
	{
	}
	void addReceiver(EventReceiver *receiver, EventType type);
	void removeReceiver(EventReceiver *receiver, EventType type);
	void send(EventType type);
private:
	std::multimap<EventType, EventReceiver*> mReceivers;
};

#endif	//_EVENT_SENDER_H